package com.boss.salary.dao;

import com.boss.salary.entity.SalPostStandardSalary;
import com.boss.salary.entity.SalaryMonthEnd;

import java.util.List;
import java.util.Map;

public interface ISalPostStandardSalaryDao {

    /**
     * 分页数据
     *
     * @param queryParam
     * @return
     */
    List<Map<String, Object>> querySalPostStandardSalaryAll(Map<String, Object> queryParam);

    /**
     * 分页数据
     *
     * @param queryParam
     * @return
     */
    List<Map<String, Object>> getSalByGradeLevelId(Map<String, Object> queryParam);

    /**
     * 校验重复
     * @param queryParams
     * @return
     */
    int checkRepeat(Map<String, String> queryParams);

    /**
     * 新增
     *
     * @param SalPostStandardSalary
     */
    void insertSalPostStandardSalary(SalPostStandardSalary SalPostStandardSalary);

    /**
     * 修改
     *
     * @param SalPostStandardSalary
     */
    void updateSalPostStandardSalary(SalPostStandardSalary SalPostStandardSalary);

    /**
     * 根据id删除
     *
     * @param id
     */
    void deleteSalPostStandardSalary(String id);

    /**
     * 根据人员类别、职务、档次/级别获取对应的工资
     * @return
     */
    List<Map<String, Object>> querySalary(String personTypeId, String postId, String gradeLevelId, String mofDivCode);

    /**
     * 根据人员类型等信息获取相应的人员
     * @param salPostStandardSalary
     * @return
     */
    List<SalaryMonthEnd> queryPersonSalary(SalPostStandardSalary salPostStandardSalary);

}
